// Import("ocr.js")
// Import("utils.js")
// Import("ggUtils.js")


var APP_NAME_HG = '红果免费短剧'
var PACK_NAME_HG = 'com.phoenix.read'
var MAIN_PAGE_FLAG_HG = '首页'
var ENTER_CENTER_PAGE_FLAG_HG = '福利'
var CENTER_PAGE_FLAG_HG = '金币收益'


function close弹窗_HG() {
    //找图返回目标数组
    var detects = opencv.findImagesEx('图色579231.cv');
    if (detects != null) {
        agentOrHidClick(detects[0])
    }
}

function skip_主界面的弹窗_HG() {
    if (getExcuteFuncTimes('start_app_HG') <= 1) {
        //7日签到福利
        var detects = opencv.findImagesEx('图色293988.cv');
        if (detects != null) {
            //    printinfoOld(detects);
            agentOrHidClick(detects[0])

            var flag = ocrWaitForText('明日再来')
            if (flag) {
                agentOrHidClick(flag)
            } else {
                agentOrHidback()
                sleep.millisecond(500)
            }
        }
    }

    agentOrHidClick(ocrText('以后再说', '取消', '我知道', '知道了'))
}

function skip_任务中心的弹窗_HG() {
    //找图返回目标数组
    var detects7天签到 = opencv.findImagesEx('图色911193.cv');
    if (detects7天签到 != null) {
        //找图返回目标数组
        var detects = opencv.findImagesEx('图色698095.cv');
        if (detects != null) {
            //    printinfoOld(detects);
            agentOrHidClick(detects[0])
        }
    }

    //弹窗
    var detects1 = opencv.findImagesEx('图色214268.cv');
    if (detects1 != null) {
        // printinfoOld(detects);
        agentOrHidClick(detects1[0])
    }

    // 关闭继续播放的控制器
    var detects2 = opencv.findImagesEx('图色776512.cv');
    if (detects2 != null) {
        agentOrHidClick(detects2[0])
    }

    if (ocrText('恭喜你', '宝箱奖励')) {
        watchGG_多次看广告(ocrWaitForMoreTextMillisecondInRegion(0, 0.35, 1, 0.95, 6, '视频最高再', '广告最高再', '看视频再', '看广告再', '视频最高', '广告最高'))
    }

    agentOrHidClick(ocrText('以后再说'))
}


function start_app_HG() {

    // 启动任务
    if (!startApp(PACK_NAME_HG)) {
        return false
    }
    printinfoOld('start-end')
    addExcuteFuncTimes('start_app_HG')

    if (getForverExcuteFuncTimes('start_app_HG') < 3) {

        //找图返回目标数组 跳过抖音绑定
        var detects = opencv.findImagesEx('图色690700.cv');
        if (detects != null) {
            SystemPrint.err('必须绑定抖音!!!!')
            // printinfoOld(detects);
            agentOrHidClick(detects[0])
        }
        addForverExcuteFuncTimes('start_app_HG')
    }

    addExcuteFuncTimes('7日签到福利')
    return true
    // 跳过首页广告
    // agentOrHidClick(ocrWaitForTextMillisecondInRegion(0.5, 0.05, 0.95, 0.3, '跳过', 4))
}

function isIn_任务中心_HG() {
    return ocrText('金币收益', '现金收益', '明日签到', '日常福利', '活动规则')
}

// enter_任务中心_HG()
function enter_任务中心_HG(isAgain) {
    skip_主界面的弹窗_HG()

    // if (!isIn_任务中心_HG()) {
    //     clickOffectY(11 / 20, 1, 60)
    // } else {
    //     if (isAgain) {
    //         return
    //     }
    // }
    clickOffectY(11 / 20, 1, 60)

    // 期望标志位
    expectView(() => {
        return ocrText(CENTER_PAGE_FLAG_HG, '活动规则')
    }, (times) => {
        skip_任务中心的弹窗_HG()

        if (times > 2) {
            agentOrHidback()
        }
        sleep.millisecond(500)
    }, (findView) => {
        // agentOrHidClick(findView)
    }, () => {
        // 进入任务中心
        expectView(() => {
            return ocrText(ENTER_CENTER_PAGE_FLAG_HG, '赚钱', '开宝箱')
        }, (times) => {
            skip_主界面的弹窗_HG()

            if (times > 4) {
                agentOrHidback()
            }
            sleep.millisecond(500)
        }, (findView, stepTimes) => {
            if (stepTimes == 1) {
                skip_主界面的弹窗_HG()
            }
            agentClickRight(findView)

            //找图返回目标数组 误触查看赚钱攻略
            var detects = opencv.findImagesEx('图色214268.cv');
            if (detects != null) {
                // printinfoOld(detects);
                agentOrHidClick(detects[0])
            }

        }, () => {
            // 失败后的方案 或者其它方案进入
            clickOffectY(3 / 8, 1, 60)

            //找图返回目标数组
            var detects红包 = opencv.findImagesEx('图色257278.cv');
            if (detects红包 != null) {
                agentOrHidClick(detects红包[0])
            }
        }, 3)
    }, 2)
}


function open_签到_HG() {
    printinfoOld('open_签到_HG')
    if (hasExcuteFunc('open_签到_HG')) {
        return
    }

    skip_任务中心的弹窗_HG()



    // 弹窗的第一次签到和后续的签到
    if (getExcuteFuncTimes('open_签到_HG') <= 1) {
        printinfoOld('弹窗签到')
        agentOrHidClick(ocrWaitForMoreTextMillisecond('立即签到', 10), 2, () => {
            setExcuteFunc('弹窗签到_HG')

            if (isEnableSwitch('hg_qd') || isEnableSwitch('hg_force')) {
                watchGG_多次看广告(ocrWaitForMoreTextMillisecondInRegion(0, 0.5, 1, 0.95, 5,
                    '视频最高再', '广告最高再', '看视频', '看广告'))
            } else {
                setExcuteFunc('open_签到_HG')
                skip_任务中心的弹窗_HG()
            }

        })

        watchGG_单次模式(ocrText('看视频签到', '看视频签'))
        // addExcuteFuncTimes('open_签到_HG')
    }

    addExcuteFuncTimes('open_签到_HG')
    // 后续的签到
    moveUp2FindWidTxtMore((findView) => {
        agentOrHidClick(findView, 2, () => {
            addExcuteFuncTimes('open_签到_HG')
            if (getExcuteFuncTimes('open_签到_HG') >= 3) {
                agentOrHidClick(ocrTextInRegion(0, 0.5, 1, 0.75, '明日再来'), 1, () => {
                    setExcuteFunc('open_签到_HG')
                    return
                })
            }

            //找图返回目标数组
            var detects = opencv.findImagesEx('图色503251.cv');
            if (detects != null) {
                // printinfoOld(detects);
                agentOrHidClick(detects[0])
                setExcuteFunc('open_签到_HG')
                return
            }

            if (!hasExcuteFunc('弹窗签到_HG')) {
                agentOrHidClick(ocrText('立即签到'), 1, () => {
                    setExcuteFunc('弹窗签到_HG')
                })
            }

            if (isEnableSwitch('hg_qd') || isEnableSwitch('hg_force')) {
                watchGG_多次看广告(ocrTextMoreInRegion(0, 0.5, 1, 0.95, '视频最高', '广告最高', '看广告再', '看视频再', '看视最高再领'))
            } else {
                setExcuteFunc('open_签到_HG')
            }

            //关闭弹窗
            var detects = opencv.findImagesEx('图色748079.cv');
            if (detects != null) {
                agentOrHidClick(detects[0])
            }
        })

    }, '明日签到', '日必得', () => {
        return ocrText('活动规则', '如有疑问', '联系方式')
    })


}

function open_开宝箱_HG() {
    printinfoOld('open_开宝箱_HG')
    if (hasExcuteFunc('open_开宝箱_HG')) {
        return
    }
    if (getExcuteFuncTimes('start_收集金币_HG_异常次数') > 3) {
        return
    }
    if (!isEnableSwitch('hg_openbx')) {
        return
    }

    if (hasExcuteFuncInTime是否在一段时间内执行过('open_开宝箱_HG')) {
        return
    }

    // if (isBetweenTime(12, 24) && (isEnableSwitch('sx_hg') || isEnableSwitch('sx_hg3'))) {
    //     // ocrTextTrue('金币>')
    //     var total金币 = ocrTextInRegion(0, 0, 0.6, 0.3, '金币>')
    //     // SystemPrint.log(getDectNumber(total金币))
    //     if (isEnableSwitch('sx_hg3')) {
    //         if (getDectNumber(total金币) > 300000 && getDectNumber(total金币) < 900000) {
    //             
    //             hideLogWindow(10)
    //             setExcuteFuncInTime一段时间内不再执行('start_收集金币_HG', 24 * 60 * 60)
    //             return
    //         }
    //     }
    //     if (isEnableSwitch('sx_hg')) {
    //         if (getDectNumber(total金币) > 600000 && getDectNumber(total金币) < 900000) {
    //             
    //             hideLogWindow(10)
    //             setExcuteFuncInTime一段时间内不再执行('start_收集金币_HG', 24 * 60 * 60)
    //             return
    //         }
    //     }
    // }
    // if (hasExcuteFunc('check_视频_HG')) {
    //     return
    // }
    if (hasExcuteFunc('need_养号_HG')) {

        printwarn('open_开宝箱_HG_金币数量低了--need_养号_HG')
        sleep.second(30)

        setExcuteFuncInTime一段时间内不再执行('start_收集金币_HG', 4 * 60 * 60)
        return
    }
    addExcuteFuncTimes('open_开宝箱_HG')

    skip_任务中心的弹窗_HG()

    var bxflag = ocrText('开宝箱得', '点击得', '点击领')
    agentClickRight(bxflag, 3, () => {
        if (getExcuteFuncTimes('open_开宝箱_HG') > 100) {
            agentOrHidClick(ocrText('继续赚钱'), 2, () => {

                setExcuteFunc('open_开宝箱_HG')
                setExcuteFuncInTime一段时间内不再执行('start_收集金币_HG', 24 * 60 * 60)
                setExcuteFuncInTime一段时间内不再执行('open_开宝箱_HG', 24 * 60 * 60)

                printwarn('open_开宝箱_HG没有开宝箱金币了')
                SystemPrint.err('open_开宝箱_HG没有开宝箱金币了!')
                sleep.second(30)

                return
            })
        }

        if (!ocrWaitForText('恭喜你获得', '宝箱奖励', '恭喜您', '您获得', '恭喜', '获得奖励', 3)) {
            watchGG_多次看广告(bxflag, true, false, 1)
        }

        // ocrText('视频最高再', true)
        var flag = ocrWaitForMoreTextMillisecondInRegion(0, 0.35, 1, 0.95, 6, '视频最高再', '广告最高再', '看视频再', '看广告再', '视频最高', '广告最高', '开启宝箱')

        if (((getDectNumber(flag) < 1999 && getDectNumber(flag) > 0) || (getDectNumber(flag) < 3000 && getDectNumber(flag) > 2000)) && !isEnableSwitch('hg_force')) {
            SystemPrint.warn('open_开宝箱_HG_金币数量低了')

            if (getExcuteFuncTimes('need_养号_HG') >= 3) {
                // setExcuteFunc('open_开宝箱_HG')
                setExcuteFunc('need_养号_HG')
            }
            if (getExcuteFuncTimes('need_养号_HG') == 0) {
                setExcuteFuncInTime一段时间内不再执行('open_开宝箱_HG', 3 * 60 * 60)
            }
            if (getExcuteFuncTimes('need_养号_HG') == 1) {
                setExcuteFuncInTime一段时间内不再执行('open_开宝箱_HG', 6 * 60 * 60)
            }
            if (getExcuteFuncTimes('need_养号_HG') == 2) {
                setExcuteFuncInTime一段时间内不再执行('open_开宝箱_HG', 12 * 60 * 60)
            }
            addExcuteFuncTimes('need_养号_HG')

            agentOrHidback()
            return
            // watchGG_简单模式(flag)
        } else {
            addExcuteFuncTimes('need_养号_HG', 0)
            watchGG_多次看广告(flag)
        }
    })

    printinfoOld('二次判断宝箱的金币是否被领取')
    if (ocrText('恭喜你', '宝箱奖励')) {

        sleep.second(5)

        watchGG_简单模式(ocrWaitForMoreTextMillisecond('视频最高再', '广告最高再', '看视频再', '看广告再', '视频最高', '最高再'))
    }

    // 再次确保
    var ocr1 = opencv.OCREx('图色883863.cv');
    if (ocr1 != null) {
        if (ocr1.getAllString().includes('看视频最高再') || ocr1.getAllString().includes('视频最高再') || ocr1.getAllString().includes('看视频再')) {

            printwarn('再次检测发现宝箱!!!')
            sleep.second(5)

            // watchGG_多次看广告(ocr1.getAllDetect()[0])
        }
    }
}

function open_金币红包雨_HG() {
    printinfoOld('open_金币红包雨_HG')
    if (!isEnableSwitch('hg_hby') && !isEnableSwitch('hg_force')) {
        return
    }

    if (getExcuteFuncTimes('start_收集金币_HG_异常次数') > 2) {
        return
    }

    if (hasExcuteFunc('open_金币红包雨_HG') || hasExcuteFuncInTime是否在一段时间内执行过('open_金币红包雨_HG')) {
        return
    }

    if (getExcuteFuncTimes('hg_hby_low') >= 2) {

        printwarn('open_金币红包雨_HG_不达标')
        sleep.second(5)

        return
    }
    skip_任务中心的弹窗_HG()


    move2Top(7, 300, '金币每天', '现金收益')
    moveUp2FindWidTxtMore((findView) => {
        if (!ocrText('开启下一场', '稍后再领', '下一场') || ocrText('00:00:00')) {
            // watchGG_多次看广告(findView)
            agentOrHidClick(findView, 5)
            addExcuteFuncTimes('open_金币红包雨_HG')
            //找图返回目标数组
            for (var i = 0; i < 20; i++) {
                // var detects = opencv.findImagesEx('图色728470.cv');
                // if (detects != null) {
                //     // printinfoOld(detects);
                //     agentOrHidClick(detects[0])
                //     sleep.millisecond(500)
                // }
                click(0.5, 0.5, 0)
                sleep.millisecond(500)
            }

            // ocrWaitForText('你在红包雨中获得', 15, 1)
            var flag = ocrWaitForText('看视频翻倍领取', '翻倍领取', 10)
            if (flag == null) {
                flag = ocrTextMoreInRegion(0, 0.6, 1, 1, '翻倍领取', '看视频翻')
            }
            if (flag == null) {
                flag = ocrTextMoreInRegion(0, 0.5, 1, 1, '翻倍领取', '看视频翻')
            }

            var flag定位 = ocrTextMoreComplete('看视频翻倍')
            if (flag定位) {
                var reactkgg = flag定位.getRect()
                var max金币 = getMaxNumber(ocrGetAllStrInRegion(screen.widthToPercent(reactkgg.getLeft() - 350),
                    screen.heightToPercent(reactkgg.getTop() - 200),
                    reactkgg.getRight() + 60,
                    screen.heightToPercent(reactkgg.getTop())))

                if (max金币 >= 1500) {
                    if (flag) {
                        watchGG_多次看广告(flag)
                    }
                }
                if (max金币 > 0 && max金币 < 1000) {
                    addExcuteFuncTimes('hg_hby_low')
                    if (getExcuteFuncTimes('hg_hby_low') >= 3) {
                        setExcuteFunc('open_金币红包雨_HG')
                    }
                }
            } else {
                if (flag) {
                    watchGG_多次看广告(flag)
                }
            }

            var detectsback = opencv.findImagesEx('图色431296.cv');
            if (detectsback != null) {
                agentOrHidClick(detectsback[0])
            }
            setExcuteFuncInTime一段时间内不再执行('open_金币红包雨_HG', 30 * 60)
            agentOrHidClick(ocrText('返回福利', '返回'))

        }

    }, '金币红包雨', '一大波红包来', () => {
        return ocrText('活动规则', '如有疑问', '联系方式')
    })

    if (ocrText('你在红包雨中获得')) {
        watchGG_多次看广告(ocrWaitForMoreTextMillisecondInRegion(0, 0.5, 1, 0.85, 30, '看视频翻倍', '看视频翻'))
    }
}

function open_翻卡赢金币_HG() {
    printinfoOld('open_翻卡赢金币_HG')
    if (!isEnableSwitch('fkkp_hg') && !isEnableSwitch('hg_force')) {
        return
    }

    if (getExcuteFuncTimes('open_翻卡赢金币_HG_failtimes') >= 2) {
        return
    }

    if (hasExcuteFunc('open_翻卡赢金币_HG') || hasExcuteFuncInTime是否在一段时间内执行过('open_翻卡赢金币_HG')) {
        return
    }
    skip_任务中心的弹窗_HG()
    close弹窗_HG()

    setExcuteFuncInTime一段时间内不再执行('open_翻卡赢金币_HG', 1 * 60 * 60)

    move2Top(4, 300, '金币每天', '现金收益')
    moveUp2FindWidTxtMore((findView) => {
        if (!ocrText('继续开启', '下一轮', '明日再来翻卡')) {
            // watchGG_多次看广告(findView)
            agentOrHidClick(findView, 5)
            addExcuteFuncTimes('open_翻卡赢金币_HG')

            var flag = ocrWaitForText('看1个视频翻', '看视频继续翻十位', '个视频翻', '继续翻百位', '继续翻千位')

            watchGG_简单模式(flag)
            skip_任务中心的弹窗_HG()
            var flagbw = ocrWaitForMoreTextMillisecond('立即翻卡', '看视频翻卡', 3)
            if (flagbw == null) {
                move2Top(2, 300, '自动兑换', '现金收益')
                moveUpHigher2FindWidTxtMore((findView) => { }, '立即翻卡', '点击翻卡', () => {
                    return ocrText('金币献爱心', '特别福利', '活动规则', '联系方式')
                })
                flagbw = ocrWaitForMoreTextMillisecond('立即翻卡', '看视频翻卡', 3)
            }
            agentOrHidClickAbsoultX(flagbw, screen.percentToWidth(0.5))


            flag = ocrWaitForText('看1个视频翻', '看视频继续翻百位', '继续翻百位', '看视频继续翻千位', '个视频翻')
            if (flag) {
                // 翻百位
                watchGG_简单模式(flag)
                skip_任务中心的弹窗_HG()
                flagbw = ocrWaitForMoreTextMillisecond('立即翻卡', '看视频翻卡', 3)
                if (flagbw == null) {
                    move2Top(2, 300, '自动兑换', '现金收益')
                    moveUpHigher2FindWidTxtMore((findView) => { }, '立即翻卡', '点击翻卡', () => {
                        return ocrText('金币献爱心', '特别福利', '活动规则', '联系方式')
                    })
                    flagbw = ocrWaitForMoreTextMillisecond('立即翻卡', '看视频翻卡', 3)
                }
                agentOrHidClickAbsoultX(flagbw, screen.percentToWidth(0.5))
            }


            flag = ocrWaitForText('看1个视频翻', '看2个视频翻', '看视频继续翻千位', '继续翻千位', '个视频翻', '位卡')
            if (flag) {
                // 翻前位
                // ocrTextTrue('看视频继续千位')
                watchGG_简单模式(flag)
                skip_任务中心的弹窗_HG()
                flagbw = ocrWaitForMoreTextMillisecond('立即翻卡', '看视频翻卡', 3)
                if (flagbw == null) {
                    move2Top(2, 300, '自动兑换', '现金收益')
                    moveUpHigher2FindWidTxtMore((findView) => { }, '立即翻卡', '点击翻卡', () => {
                        return ocrText('金币献爱心', '特别福利', '活动规则', '联系方式')
                    })
                    flagbw = ocrWaitForMoreTextMillisecond('立即翻卡', '看视频翻卡', 3)
                }
                agentOrHidClickAbsoultX(flagbw, screen.percentToWidth(0.5))
            }

            // ocrTextTrue('看视频')

            var successFlag = ocrWaitForMoreTextMillisecond('开心收下')
            if (!successFlag) {
                watchGG_简单模式(ocrWaitForText('看1个视频翻', '看2个视频翻', '看3个视频翻', '看4个视频翻', '个视频翻', '看视频继续翻', '频继续翻'))
                agentOrHidClickAbsoultX(ocrWaitForMoreTextMillisecond('立即翻卡', '看视频翻卡'), screen.percentToWidth(0.5))
                successFlag = ocrWaitForMoreTextMillisecond('开心收下')
            }

            agentOrHidClick(successFlag)

            // var flag = ocrWaitForMoreTextMillisecondInRegion(0.25, 0.5, 0.78, 0.8, 4, '看视频翻倍')
            // // if (getDectNumber(flag) < 2000 && getDectNumber(flag) > 0) {
            // //     addExcuteFuncTimes('open_翻卡赢金币_HG')
            // //     if (getExcuteFuncTimes('open_翻卡赢金币_HG') > 2) {
            // //         setExcuteFunc('金币红包雨')
            // //     }
            // // }

            // if (flag) {
            //     watchGG_多次看广告(flag)
            // } else {
            //     agentOrHidClick(ocrText('直接领取'))
            // }


        } else {
            if (ocrText('明日再来翻卡')) {
                setExcuteFunc('open_翻卡赢金币_HG')
            }
        }

    }, '翻卡赢金币', '翻卡赢金币', '翻卡赢金币', '点击翻卡', '立即翻卡', () => {
        return ocrText('活动规则', '如有疑问', '联系方式')
    }, () => {
        addExcuteFuncTimes('open_翻卡赢金币_HG_failtimes')
    })
    // ocrTextTrue('翻卡赢金币')
    close弹窗_HG()
}

function check_金币数量_HG() {
    printinfoOld('check_金币数量_HG')
    // if (getExcuteFuncTimes('open_金币红包雨_HG') < 10) {
    //     return
    // }


    move2Top(7, 300, '金币每天凌晨自动', '现金收益')
    agentOrHidClick(ocrText('金币收益'))
    ocrWaitForText('支付宝提现')
    agentOrHidClick(ocrText('金币收益'))

    if (!hasExcuteFunc('金币红包雨')) {
        if (!isInNearBy(ocrText('金币红包雨'), '4000', 150)) {
            addExcuteFuncTimes('check_金币数量_HG')
        }
        if (getExcuteFuncTimes('check_金币数量_HG') >= 2) {
            setExcuteFunc('金币红包雨')
        }
    }


    if (!hasExcuteFunc('check_视频_HG')) {
        if (!isInNearBy(ocrText('看视频赚海量金币', '激励广告奖励'), '2000', 150)) {
            addExcuteFuncTimes('check_视频_HG')
        }

        if (getExcuteFuncTimes('check_视频_HG') >= 3) {
            setExcuteFunc('check_视频_HG')
        }
    }



    backUntilFindView(() => ocrText('看短剧', '日常福利', '开宝箱', '金币收益', '活动规则', '去提现', '新人福利'))

}

function open_阅读赚金币_HG() {
    printinfoOld('open_阅读赚金币_HG')

    if (!isEnableSwitch('hg_read') && !isEnableSwitch('hg_force')) {
        return
    }

    if (hasExcuteFunc('open_阅读赚金币_HG')) {
        return
    }

    if (hasExcuteFuncInTime是否在一段时间内执行过('open_阅读赚金币_HGtimes')) {
        return
    }

    if (getExcuteFuncTimes('open_阅读赚金币_HG') > 20) {
        setExcuteFunc('open_阅读赚金币_HG')
        return
    }
    skip_任务中心的弹窗_HG()

    move2Top(7, 300, '金币每天凌晨自动', '现金收益')
    if (isBetweenTime(0, 19)) {
        setExcuteFuncInTime一段时间内不再执行('open_阅读赚金币_HGtimes', 2 * 60 * 60)
    } else {
        setExcuteFuncInTime一段时间内不再执行('open_阅读赚金币_HGtimes', 20 * 60)
    }
    moveUp2FindWidTxtMore((findView) => {
        if (isInNearBy(findView, '立即领取')) {
            agentOrHidClick(findView)
            if (hasExcuteFunc('need_养号_HG')) {
                watchGG_简单模式(ocrTextMoreInRegion(0, 0.5, 1, 0.95, '视频最高再领', '视频最高', '看广告最高', '看广告再', '看视频'))
            } else {
                watchGG_多次看广告(ocrTextMoreInRegion(0, 0.5, 1, 0.95, '视频最高再领', '视频最高', '看广告最高', '看广告再', '看视频'))
            }

            addExcuteFuncTimes('open_阅读赚金币_HG')
        } else {
            setExcuteFuncInTime一段时间内不再执行('open_阅读赚金币_HGtimes', 2 * 60 * 60)
        }
    }, '阅读赚金币', '阅读', () => {
        return ocrText('活动规则', '如有疑问', '联系方式')
    })
}

function watch_看广告_HG() {

    printinfoOld('watch_看广告_HG')

    if (!isEnableSwitch('hg_ksp') && !isEnableSwitch('hg_force')) {
        return
    }

    // if (hasExcuteFunc('check_视频_HG')) {
    //     return
    // }

    if (hasExcuteFunc('watch_看广告_HG')) {
        return
    }

    if (getExcuteFuncTimes('watch_看广告_HG') > 30) {
        return
    }

    skip_任务中心的弹窗_HG()

    move2Top(4, 300, '金币每天凌晨自动', '现金收益')
    moveUp2FindWidTxtMore((findView) => {
        if (isInNearBy(findView, '今日任务已完成', 150)) {
            setExcuteFunc('watch_看广告_HG')
        } else {
            if (getDectNumber(findView) >= 3000 || getDectNumber(findView) == 2000) {
                watchGG_多次看广告(findView)
                addExcuteFuncTimes('start_收集金币_HG_异常次数', 0)
            } else {
                if (getDectNumber(findView) > 50 && getDectNumber(findView) < 2000) {
                    addExcuteFuncTimes('start_收集金币_HG_异常次数')
                }
            }
        }
    }, '看视频赚海量金币', '看视频立', '看视频賺', () => {
        return ocrText('活动规则', '如有疑问', '联系方式')
    })

    addExcuteFuncTimes('watch_看广告_HG')
}

function open_收益日报_HG() {

    printinfoOld('open_收益日报_HG')

    if (hasExcuteFunc('open_收益日报_HG')) {
        return
    }

    if (getExcuteFuncTimes('open_收益日报_HG') > 3) {
        return
    }

    skip_任务中心的弹窗_HG()

    move2Top(4, 300, '金币每天凌晨自动', '现金收益')
    moveUp2FindWidTxtMore((findView) => {
        agentOrHidClick(findView)

        var jbFlag = ocrWaitForText('看视频再', '看广告再', '视频最高', '广告最高', '视频广告', '广告视频', '最高再')
        var flagfin = ocrText('我知道了')
        if (flagfin) {
            setExcuteFunc('open_收益日报_HG')
            agentOrHidClick(flagfin)
        } else {
            if (getDectNumber(jbFlag) >= 3000 || getDectNumber(jbFlag) == 2000) {
                watchGG_多次看广告(jbFlag)
                // addExcuteFuncTimes('start_收集金币_HG_异常次数', 0)
            } else {
                setExcuteFunc('open_收益日报_HG')

                // if (getDectNumber(jbFlag) > 50 && getDectNumber(jbFlag) < 2000) {
                //     addExcuteFuncTimes('start_收集金币_HG_异常次数')
                // }
                close弹窗_HG()
            }
        }
    }, '收益日报', '日报奖励', () => {
        return ocrText('活动规则', '如有疑问', '联系方式')
    })

    addExcuteFuncTimes('open_收益日报_HG')
}



function go_看短剧福利_HG() {
    printinfoOld('go_看短剧福利_HG-------------------------------')

    if (hasExcuteFunc('连续看短剧') || getExcuteFuncTimes('go_看短剧福利_HG') > 3 || hasExcuteFuncInTime是否在一段时间内执行过('go_看短剧福利_HGtimes')) {
        return
    }

    skip_任务中心的弹窗_HG()

    move2Top(5, 300, '现金收益', '赚赚卡', '活动收益')
    if (isBetweenTime(0, 19)) {
        setExcuteFuncInTime一段时间内不再执行('go_看短剧福利_HGtimes', 1 * 60 * 60)
    } else {
        setExcuteFuncInTime一段时间内不再执行('go_看短剧福利_HGtimes', 30 * 60)
    }
    moveUp2FindWidTxtMore((findView) => {
        if (isInNearBy(findView, '去完成') || isInNearBy(findView, '去看剧')) {
            agentOrHidClick(findView)


            agentOrHidClickAbsoultXOffectY(ocrText('热剧榜', '新剧', '逆袭', '重生'), screen.percentToWidth(0.5), -250)
            whilestep((stepTimes) => {
                if (stepTimes % 6 == 0) {
                    //找图返回目标数组
                    var detects = opencv.findImagesEx('图色725264.cv');
                    if (detects != null) {
                        // printinfoOld(detects[0].getRect());
                        var findRect = detects[0].getRect()
                        if (findRect.getCenterX() > 0.9) {
                            agentSwipBig()
                            sleep.second(1)
                        }
                    }

                    //找图返回目标数组
                    var detectsxr = opencv.findImagesEx('图色354128.cv');
                    if (detectsxr != null) {
                        agentOrHidClick(detectsxr[0])
                    }

                    if (ocrText('上滑继续', '广告', '反馈')) {
                        sleep.second(15)
                        agentSwipBig()
                        sleep.second(1)
                    }

                    if (ocrText('追剧')) {
                        click(0.5, 0.3)
                    }
                }
            }, ENV() == 'test' ? 5 * 60 : 22 * 60)

        } else {
            // 可以进行领取金币
            agentOrHidClick(findView)

            var spFlag = ocrWaitForMoreTextMillisecondInRegion(0, 0.4, 1, 0.95, 5,
                '视频最高再', '广告最高再', '看视频再领', '看视频', '看广告')
            if (spFlag) {
                setExcuteFunc('连续看短剧')
                watchGG_多次看广告(spFlag)
            }

        }
        // agentOrHidClick(findView)

    }, '连续看短剧', '看短剧福利', () => {
        return ocrText('活动规则', '如有疑问', '联系方式')
    })
    addExcuteFuncTimes('go_看短剧福利_HG')
}

function go_吃饭补贴_HG() {
    printinfoOld('go_吃饭补贴_HG-------------------------------')
    if (!isEnableSwitch('hg_eat') && !isEnableSwitch('hg_force')) {
        return
    }

    if (hasExcuteFuncInTime是否在一段时间内执行过('open_开宝箱_HG')) {
        return
    }

    if (getEatingTime获取吃饭时间Flag()) {

        if (hasExcuteFunc('go_吃饭补贴_HG' + getEatingTime获取吃饭时间Flag())) {
            return
        }

        skip_任务中心的弹窗_HG()

        move2Top(7, 300, '现金收益', '赚赚卡', '活动收益')
        moveUp2FindWidTxtMore((findView) => {
            agentOrHidClick(findView)
            // ocrText('补贴', true)
            // var flag补领 = ocrText('看视频补领一次')
            // if(flag补领){
            //     watchGG_简单模式(flag补领)
            // }
            agentOrHidClick(ocrWaitForTextMillisecondInRegion(0.15, 0.4, 0.85, 1, '补贴'), 2, () => {
                var moreFlag = ocrText('看视频再', '看广告再', '视频最高', '广告最高', '视频广告', '广告视频', '最高再')
                if (getDectNumber(moreFlag) > 1999) {
                    if (hasExcuteFunc('need_养号_HG')) {
                        watchGG_简单模式(moreFlag)
                    } else {
                        watchGG_多次看广告(moreFlag)
                    }

                }
                setExcuteFunc('go_吃饭补贴_HG' + getEatingTime获取吃饭时间Flag())
            })
        }, '吃饭补贴', '吃饭补')
        // 只执行一次

        backUntilFindView(() => ocrText('看短剧', '日常福利', '开宝箱', '金币收益', '活动规则', '去提现', '新人福利'))
    }
}


function start_分屏看剧_HG() {

    printinfoOld('start_分屏看剧_HG')
    agentOrHidClick(backUntilFindView(() => {
        var flag = ocrText('万播放')
        if (!flag) skip_主界面的弹窗_HG()

        //找图返回目标数组
        var detect新剧 = opencv.findImagesEx('图色910305.cv');
        if (detect新剧 != null) {
            printinfoOld('观看新剧')
            return detect新剧[0]
        }

        return flag
    }, 3))


}


// start_去看剧_HG()
function start_去看剧_HG() {
    printinfoOld('start_去看剧_HG')

    if (!isEnableSwitch('hg_read') && !isEnableSwitch('hg_force')) {
        return
    }

    if (hasExcuteFuncInTime是否在一段时间内执行过('start_去看剧_HGtimes')) {
        return
    }

    move2Top(7, 300, '金币每天凌晨自动', '现金收益')
    if (isBetweenTime(0, 19)) {
        setExcuteFuncInTime一段时间内不再执行('start_去看剧_HGtimes', 1 * 60 * 60)
    } else {
        setExcuteFuncInTime一段时间内不再执行('start_去看剧_HGtimes', 20 * 60)
    }
    // ocrText('看短剧赚金币', true)
    // 
    moveUp2FindWidTxtMore((findView) => {
        if (isInNearBy(findView, '去看剧') || isInNearBy(findView, '继续')) {
            printinfoOld('需要去看剧赞任务')

            if (getExcuteFuncTimes('start_去看剧_HG') <= 8) {
                // addExcuteFuncTimes('start_去看剧_HG')
                // agentOrHidClick(findView)
                // agentOrHidClick(ocrWaitForMoreTextMillisecond('万播放', 4))
                // whilestep((stepTimes) => {
                //     if (stepTimes % 2 == 0) {
                //         //找图返回目标数组
                //         var detects = opencv.findImagesEx('图色725264.cv');
                //         if (detects != null) {
                //             // printinfoOld(detects[0].getRect());
                //             var findRect = detects[0].getRect()
                //             if (findRect.getCenterX() > 0.9) {
                //                 agentSwipBig()
                //                 sleep.second(1)
                //             }
                //         }

                //         if (ocrText('上滑继续', '广告', '反馈')) {
                //             sleep.second(15)
                //             agentSwipBig()
                //             sleep.second(1)
                //         }
                //     }
                // }, ENV() == 'test' ? 5 * 60 : 20 * 60)
            }

        } else {
            // 可以进行领取金币
            agentOrHidClick(findView)
            if (hasExcuteFunc('need_养号_HG')) {
                // agentOrHidClick(ocrWaitForMoreTextMillisecondInRegion(0, 0.5, 1, 0.95, 5,
                //                     '视频最高再', '广告最高再', '看视频再领', '看视频', '看广告'))
                // Otg.click(600.5,1674.5)
                watchGG_简单模式(ocrWaitForMoreTextMillisecondInRegion(0, 0.5, 1, 0.95, 5,
                    '视频最高再', '广告最高再', '看视频再领', '看视频', '看广告'))
            } else {
                watchGG_多次看广告(ocrWaitForMoreTextMillisecondInRegion(0, 0.5, 1, 0.95, 5,
                    '视频最高再', '广告最高再', '看视频再领', '看视频', '看广告'))
            }

        }

    }, '看短剧赚金币', '看短剧赚', '短剧赚', () => {
        return ocrText('活动规则', '如有疑问', '联系方式')
    })
}

function start_去打卡_HG() {
    if (hasExcuteFunc('start_去打卡_HG') || getExcuteFuncTimes('start_去打卡_HG') > 3) {
        return
    }
    skip_任务中心的弹窗_HG()
    move2Top(3, 300, '金币每天凌晨自动', '现金收益')

    addExcuteFuncTimes('start_去打卡_HG')
    moveUp2FindWidTxtMore((findView) => {
        agentOrHidClick(findView)
        agentOrHidClick(ocrWaitForMoreTextMillisecond('立即打卡', '立即打', '即打卡', 8), 2, () => {
            setExcuteFunc('start_去打卡_HG')
        })
        backUntilFindView(() => ocrText('看短剧', '日常福利', '开宝箱', '金币收益', '活动规则', '去提现', '新人福利'))
    }, '百万金币平分', '去打卡', '平分资格', '奖池', () => {
        return ocrText('活动规则', '如有疑问', '联系方式')
    })
}

function start_阅读_HG() {
    printinfoOld('start_阅读_HG')
    // if (hasExcuteFunc('start_阅读_HG')) {
    //     return
    // }

    agentOrHidClick(backUntilFindView(() => {
        var flag = ocrTextMoreInRegion(0, 0.85, 1, 1, '追剧', '收藏')
        if (!flag) skip_主界面的弹窗_HG()
        return flag
    }, 3))

    expectView(() => {
        return ocrText('书籍')
    }, (times) => {
        skip_主界面的弹窗_HG()

        if (times >= 6) {
            agentOrHidback()
            sleep.millisecond(500)
            agentOrHidClick(ocrWaitForMoreTextMillisecond('追剧', 4))
        }
        sleep.millisecond(500)
    }, (findView) => {
        agentClickRightOffectRight(findView, 25)

        //确保书籍
        var detects = opencv.findImagesEx('图色436394.cv');
        if (detects != null) {
            agentOrHidClick(detects[0])
        }

        agentOrHidClick(ocrText('未读', '完结', '连载', '更新', '已下架'))

        if (!ocrWaitForMoreTextMillisecond('下一章')) {
            click(0.5, 0.6)
        }

        //找图返回目标数组
        var detects听 = opencv.findImagesEx('图色139507.cv');
        if (detects听 != null) {
            agentOrHidClick(detects听[0])
            sleep.millisecond(2000)
        } else {
            agentOrHidClick(ocrText('边听边读'))
            //播放标志
            var detects播放 = opencv.findImagesEx('图色523677.cv');
            if (detects播放 != null) {
                agentOrHidClickAbsoultX(detects播放[0], -100)
            }
        }

        ocrWaitForText('定时')
        if (ENV() == 'pro') {
            watchGG_简单模式(ocrText('看视频得', '看广告'))
            watchGG_简单模式(ocrText('看视频得', '看广告'))
            watchGG_简单模式(ocrText('看视频得', '看广告'))
        }

        sleep.millisecond(1000)
        move2Top()

        // var detects播放 = opencv.findImagesEx('图色523677.cv');
        // if (detects播放 != null) {
        //     agentOrHidClick(detects播放[0])
        // }

        if (ocrText('定时', '语速')) {
            sleep.millisecond(500)
            move2Top()
        }
    }, null, 8)



    // whilestep((times) => {
    //     if (times % 60 == 0) {
    //         agentOrHidClick(ocrText('不再提示'))
    //     }
    // }, ENV() == 'test' ? 5 * 60 : 185 * 60)

    // setExcuteFunc('start_阅读_HG')
    // stopAllApp()
}


function start_while_收集金币_HG() {
    var stepTimes = getExcuteFuncTimes('start_收集金币_HG')
    while (true) {
        printinfoOld('start_while_收集金币_HG:次数： ' + stepTimes)
        if (stepTimes <= 10 || stepTimes % 6 == 0) {
            start_收集金币_HG()

            start_去看剧_HG()
            // closeApp(PACK_NAME_HG)
            stopAllApp()
        } else {
            // 异常不在界面了!!
            if (!ocrText('开宝箱')) {
                stopAllApp()
                start_app_HG()

                enter_任务中心_HG()
            }
            addExcuteFuncTimes('start_收集金币_HG')
            open_开宝箱_HG()
            sleep.second(150)
        }

        stepTimes = stepTimes + 1


        if (hasExcuteFunc('need_养号_HG')) {
            break
        }
    }
}


// start_看红果视频_HG()
function start_看红果视频_HG() {
    printinfoOld('start_看红果视频_HG')

    if (hasExcuteFunc('start_看红果视频_HG')) {
        return
    }
    if (getExcuteFuncTimes('start_看红果视频_HG' >= 2 && isEnableSwitch('jsll'))) {
        return
    }

    if (getExcuteFuncTimes('start_看红果视频_HG') > 2) {
        setExcuteFunc('start_看红果视频_HG')
        return
    }
    if (!start_app_HG()) {
        return
    }
    // printinfoOld('test')
    skip_主界面的弹窗_HG()


    // start_阅读_HG()

    // agentClickLeft(backUntilFindView(() => ocrText('首页')))
    expectView(() => {
        return ocrText('万播放', '短剧', '万追剧', '万热度', '播放', '万热')
    }, (times) => {
        skip_主界面的弹窗_HG()

        if (times > 5) {
            agentOrHidback()
        }
        sleep.millisecond(1000)
    }, (findView) => {
        agentOrHidClick(findView)
    }, null, 5)


    if (ocrText('万播放', '短剧', '万追剧', '万热度', '播放')) {
        var detect新剧 = opencv.findImagesEx('图色910305.cv');
        if (detect新剧 != null) {
            agentOrHidClick(detect新剧[0])
        }

        var detects播放 = opencv.findImagesEx('图色468657.cv');
        if (detects播放 != null) {
            agentOrHidClick(detects播放[0])
        }
    }

    agentOrHidClick(ocrText('古装', '玄幻', '都市日常', '奇幻', '爱情'))


    var sleeptimes = 16
    if (isEnableSwitch('moretime_hg')) {
        sleeptimes = 21

    }
    if (isEnableSwitch('hg_more_more')) {
        sleeptimes = 31
        if (getExcuteFuncTimes('start_看红果视频_HG') > 8) {
            setExcuteFunc('start_看红果视频_HG')
            return
        }
    }

    startThredTask(() => {
    }, (stepTimes) => {
        if (stepTimes % 2 == 0) {
            //找图返回目标数组
            var detects = opencv.findImagesEx('图色725264.cv');
            if (detects != null) {
                // printwarn(detects[0].getRect().getCenterX());
                var findRect = detects[0].getRect()
                if (findRect.getCenterX() > 0.85) {
                    agentSwipBig()
                    sleep.second(1)
                }
            }

            if (ocrText('直播')) {
                agentSwipBiger()
                sleep.second(5)
                if (ocrText('直播')) {
                    agentSwipBiger()
                }
            }

            if (ocrText('上滑继续', '广告', '反馈', '下载', '开发者')) {

                printwarn('浏览短剧看广告中...')
                var flag秒 = ocrText('秒后')
                if (flag秒) {
                    var sleeptime = getDectNumber(flag秒)
                    if (sleeptime < 15) {
                        sleeptime = 15
                    }
                    sleep.second(sleeptime)
                } else {
                    sleep.second(getRandomNum(35, 45))
                }

                agentSwipBiger()
                sleep.second(1)
            }
        }

        if (stepTimes % 12 == 0) {
            agentOrHidClick(ocrText('下次再说'))
        }
    }, (ENV() == 'test' ? 1 * 60 : sleeptimes) * 60)


    // setExcuteFunc('start_看红果视频_HG')
    addExcuteFuncTimes('start_看红果视频_HG')


    // if (uiSwitch.findByID(控件ID = "moretime_hg").getOn() || getForverExcuteFuncTimes('红果起号') < 5) {
    //     if (getExcuteFuncTimes('start_看红果视频_HG') >= 12) {
    //         setExcuteFunc('start_看红果视频_HG')
    //     }
    // } else {
    //     if (getExcuteFuncTimes('start_看红果视频_HG') >= 2) {
    //         setExcuteFunc('start_看红果视频_HG')
    //     }
    // }


    stopAllApp()
}

function open_预约_HG() {
    printinfoOld('open_预约_HG')
    skip_任务中心的弹窗_HG()

    if (hasExcuteFunc('open_预约_HG')) {
        return
    }

    if (getExcuteFuncTimes('open_预约_HG') > 3) {
        setExcuteFunc('open_预约_HG')
        return
    }

    // ocrTextTrue('去预约')
    move2Top(3, 300, '金币每天凌晨自动', '现金收益')
    moveUp2FindWidTxtMore((findView) => {
        if (isInNearBy(findView, '去预约') || isInNearBy(findView, '去领取')) {
            agentOrHidClick(findView)

            // ocrTextTrue('立即预约领取')
            agentOrHidClick(ocrWaitForText('立即预约领取', '立即领取', '一键领取', '约领取', '继续预约'))
            addExcuteFuncTimes('open_预约_HG')

            watchGG_单次模式(ocrWaitForText('看视频再', '看广告再', '看视频领', '看广告领'))

            // skip_任务中心的弹窗_HG()
            //找图返回目标数组
            var detectsclose = opencv.findImagesEx('图色449956.cv');
            if (detectsclose != null) {
                agentOrHidClick(detectsclose[0])
            }


            agentOrHidClick(ocrWaitForText('立即预约领取', '立即领取', '一键领取', '约领取', '继续预约'), 1, () => {
                skip_任务中心的弹窗_HG()
                detectsclose = opencv.findImagesEx('图色449956.cv');
                if (detectsclose != null) {
                    agentOrHidClick(detectsclose[0])
                }
            })

            agentOrHidClick(ocrText('禁止'))

            if (ocrText('领奖进度', '天天预约')) {
                agentOrHidback()
            }
        }
    }, '预约领', '今日预约')
}

function open_额外金币_HG() {
    printinfoOld('open_额外金币_HG')
    skip_任务中心的弹窗_HG()

    if (hasExcuteFunc('open_额外金币_HG')) {
        return
    }

    if (hasExcuteFuncInTime是否在一段时间内执行过('open_额外金币_HGtimes')) {
        return
    }

    // if (getExcuteFuncTimes('open_额外金币_HG') > 2) {
    //     setExcuteFunc('open_额外金币_HG')
    //     return
    // }

    // ocrTextTrue('立即领取')
    move2Top(3, 300, '金币每天凌晨自动', '现金收益')
    moveUp2FindWidTxtMore((findView) => {
        if (isInNearBy(findView, '立即领取', 200) || isInNearBy(findView, '去领取', 200)) {

            watchGG_单次模式(getDectByNearBy(findView, '立即领取', 200))
            setExcuteFuncInTime一段时间内不再执行('open_额外金币_HGtimes', 3600 * 2)

        }
    }, '额外存金币', '看短剧额外')
}



//   closeApp(PACK_NAME_HG)

// open_开宝箱_HG()
// start_收集金币_HG(false)
function start_收集金币_HG(isAutoCLose是否自动关闭, isForce) {
    if (isAutoCLose是否自动关闭 === undefined) isAutoCLose是否自动关闭 = true

    if (!isForce && (isBetweenTime(0, 6) && isEnableSwitch('hg_yjbzx'))) {
        return
    }

    if (isEnableSwitch('hg_bsj')) {
        return
    }

    printinfoOld('start_收集金币_HG')
    if (!isAllow允许登录(PACK_NAME_HG)) {
        if (getExcuteFuncTimes('start_收集金币_HG') == 0) {

            printwarn('红果启动失败或被屏蔽')
            sleep.second(10)

            addExcuteFuncTimes('start_收集金币_HG')
        }
        return
    }

    if (!start_app_HG()) {
        if (getExcuteFuncTimes('start_收集金币_HG_失败') <= 1) {

            printwarn('红果启动失败或被屏蔽')
            sleep.second(5)

        }
        addExcuteFuncTimes('start_收集金币_WKLLQ_失败')
        return
    }

    enter_任务中心_HG()

    showEnterMainpageInfo展示进入任务弹窗信息()


    // if (ENV() == 'test') return
    addExcuteFuncTimes('start_收集金币_HG')

    startThredTaskMaxTime超时结束(() => {
        open_签到_HG()

        open_开宝箱_HG()

        watch_看广告_HG()

        open_翻卡赢金币_HG()

        open_金币红包雨_HG()

        open_收益日报_HG()

        open_预约_HG()

        open_额外金币_HG()

        // go_吃饭补贴_HG()

        // open_阅读赚金币_HG()

        // start_去看剧_HG()

        // start_去打卡_HG()

        // open_开宝箱_HG()
    }, 20 * 60)

    go_看短剧福利_HG()
    // check_金币数量_HG()

    if (isAutoCLose是否自动关闭) {
        stopAllApp()
    }

}


